Apache ActiveMQ ™ -- ActiveMQ 3 Transport Configurations

Site > Old Links > Previous Versions > ActiveMQ 3 Transport Configurations

Some of the transports support configuration, such as timeout values, maximum retry count and so forth. To configure the transports you can use the URI query syntax. e.g.

<![CDATA[ tcp://foo:1234?asyncSend=true&socketBufferSize=10000 ]]>

If you are using a list of URLs like above with the list and reliable protocols you can wrap the list in parens to be able to configure the list. e.g.

<![CDATA[ reliable:(tcp://foo:61699,tcp://bar:61617,tcp://whatnot:61698)?maximumRetries=0 ]]>

Generic configuration options

Option Name

Default Value

Type

brokerXmlConfig

null

String

cachingEnabled

true

boolean

clientID

null

String

copyMessageOnSend

true

boolean

disableTimeStampsByDefault

false

boolean

doMessageCompression

true

boolean

doMessageFragmentation

true

boolean

messageCompressionLimit

32768

int

messageCompressionStrategy

0

int

messageFragmentationLimit

65536

int

optimizedMessageDispatch

false

boolean

password

null

String

prepareMessageBodyOnSend

true

boolean

turboBoost

true

boolean

useAsyncSend

true

boolean

useEmbeddedBroker

false

boolean

userName

null

String

wireFormat

default

String

noDelay

false

boolean

brokerXmlConfig

Sets the Xml Configuration file used to configure the ActiveMQ broker via Spring if using embedded mode. The filename is assumed to be on the classpath unless a URL is specified. So a value of

<![CDATA[foo/bar.xml]]>

would be assumed to be on the classpath whereas

<![CDATA[file:dir/file.xml]]>

would use the file system. Any valid URL string is supported.

cachingEnabled

Provides optimisations on the wire format (caching data at each end and using references to it to minmise the message size

clientID

Used to set the JMS clientID of connection.

copyMessageOnSend

Use to avoid the overhead of doing a deep copy of the JMS message everytime the message is sent.

disableTimeStampsByDefault

Use to avoid the overhead of setting a timestamp on each message produced.

doMessageCompression

If messages should be compressed.

doMessageFragmentation

If messages should be chunked into smaller fragments on the clients side.

messageCompressionLimit

Data size above which compression will be used

messageCompressionStrategy

The compression strategy to use when compressing messages. Defaults to the value of java.util.zip.Deflater.DEFAULT_STRATEGY (0).

messageFragmentationLimit

Data size above which message fragmentation will be used

optimizedMessageDispatch

password

The user password used to authenticate with the broker.

prepareMessageBodyOnSend

Causes pre-serialization of messages before send.

turboBoost

Enables a number of performance enhancements which are disabled by default to ensure J2EE certification. turboBoost turns on a bunch of optimisations: disableTimeStampsByDefault, useAsyncSend, cachingEnabled, and optimizedMessageDispatch and then disables copyMessageOnSend and prepareMessageBodyOnSend

useAsyncSend

Used to enable asynchronous sending, which boost performance by using another thread to handle sending of messages to the socket.

useEmbeddedBroker

Set to true if you want start an embeded broker when the first connection is created.

userName

The user name used to authenticate with the broker.

wireFormat

Allows a custom wire format to be used; otherwise the default Java wire format is used which is designed for minimum size and maximum speed on the Java platform.

noDelay

Used to indicate whether messages are dispatched as quickly as possible or not. (The latency versus throughput trade off). When using TCP based transport this option is a means of disabling Nagles which can often improve performance on synchronous sends.

TCP configuration options

  • soTimeout (long) sets the SO_TIMEOUT) value (in milliseconds) on the socket
  • socketBufferSize (int) the size of the buffer size on the socket

SSL configuration options

Same as TCP. SSL certificates are configured at the VM level. See How do I use SSL

List configuration options

  • maximumRetries (int) the maximum number of times that this protocol will attempt to make a connection on a failure before giving up completely and throwing an exception up to the JMS client. Set this value to zero (or -1) to force an infinite reconnection loop. Warning: setting an infinite reconnection loop could hang your JMS client program indefinitely.

  • failureSleepTime (long) the amout of time that the transport will sleep before trying to reconnect again

  • establishConnectionTimeout (long) the timeout value for which a connection must start by on connection start - otherwise the start connection will fail

  • incrementTimeout (boolean) should the timeout increase, exponentially as connection attempts are made

  • maximumTimeout (long) the maximum timeout value that it should increase to (if enabled)

Reliable and Remote configuration options

Same as the List configuration options above - plus

  • keepAliveTimeout (long) the amount of time without receiving a keep alive ping before the connection is considered dead.

Peer configuration options

  • discoveryURI (string) the URI used to discover find other nodes; which defaults to using multicast discovery

  • remoteUserName, removePassword (string) the optional login/password to connect to the remote brokers with

  • peerURIs (string) the hard coded URIs of peers to connect to

Discovery configuration options

  • channelName (string) provides a way to separate out different logical groups of nodes in the cluster

Multicast configuration options

  • timeToLive (int) defaults to 1 so we don't send multicast messages beyond our own local subnet.

  • loopbackMode (boolean) defaults to false so we don't see our own messages

Overview

Sub Projects

Community

Features

Connectivity

Using ActiveMQ 5

Using ActiveMQ 4

Tools

External Tools

Support

Developers

Tests

Project Reports

results matching ""

    No results matching ""